home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / cvs-1_3.lha / cvs-1.3 / src / config.h < prev    next >
C/C++ Source or Header  |  1992-03-31  |  8KB  |  218 lines

  1. /* @(#)config.h 1.19 92/03/31     */
  2.  
  3. /*
  4.  * Copyright (c) 1992, Brian Berliner and Jeff Polk
  5.  * Copyright (c) 1989-1992, Brian Berliner
  6.  * 
  7.  * You may distribute under the terms of the GNU General Public License as
  8.  * specified in the README file that comes with the CVS 1.3 kit.
  9.  * 
  10.  * This file holds (most of) the configuration tweaks that can be made to
  11.  * customize CVS for your site.  CVS comes configured for a typical SunOS 4.x
  12.  * environment.  The comments for each configurable item are intended to be
  13.  * self-explanatory.  All #defines are tested first to see if an over-riding
  14.  * option was specified on the "make" command line.
  15.  * 
  16.  * If special libraries are needed, you will have to edit the Makefile.in file
  17.  * or the configure script directly.  Sorry.
  18.  */
  19.  
  20. /*
  21.  * CVS provides the most features when used in conjunction with the Version-5
  22.  * release of RCS.  Thus, it is the default.  This also assumes that GNU diff
  23.  * Version-1.15 is being used as well -- you will have to configure your RCS
  24.  * V5 release separately to make this the case. If you do not have RCS V5 and
  25.  * GNU diff V1.15, comment out this define. You should not try mixing and
  26.  * matching other combinations of these tools.
  27.  */
  28. #ifndef HAVE_RCS5
  29. #define    HAVE_RCS5
  30. #endif
  31.  
  32. /*
  33.  * If, before installing this version of CVS, you were running RCS V4 AND you
  34.  * are installing this CVS and RCS V5 and GNU diff 1.15 all at the same time,
  35.  * you should turn on the following define.  It only exists to try to do
  36.  * reasonable things with your existing checked out files when you upgrade to
  37.  * RCS V5, since the keyword expansion formats have changed with RCS V5.
  38.  * 
  39.  * If you already have been running with RCS5, or haven't been running with CVS
  40.  * yet at all, or are sticking with RCS V4 for now, leave the commented out.
  41.  */
  42. #ifndef HAD_RCS4
  43. /* #define    HAD_RCS4 */
  44. #endif
  45.  
  46. /*
  47.  * For portability and heterogeneity reasons, CVS is shipped by default using
  48.  * my own text-file version of the ndbm database library in the src/myndbm.c
  49.  * file.  If you want better performance and are not concerned about
  50.  * heterogeneous hosts accessing your modules file, turn this option off.
  51.  */
  52. #ifndef MY_NDBM
  53. #define    MY_NDBM
  54. #endif
  55.  
  56. /*
  57.  * The "diff" program to execute when creating patch output.  This "diff"
  58.  * must support the "-c" option for context diffing.  Specify a full pathname
  59.  * if your site wants to use a particular diff.  If you are using the GNU
  60.  * version of diff (version 1.15 or later), this should be "diff -a".
  61.  * 
  62.  * NOTE: this program is only used for the ``patch'' sub-command.  The other
  63.  * commands use rcsdiff which will use whatever version of diff was specified
  64.  * when rcsdiff was built on your system.
  65.  */
  66. #ifndef DIFF
  67. #define    DIFF    "diff"
  68. #endif
  69.  
  70. /*
  71.  * The "grep" program to execute when checking to see if a merged file had
  72.  * any conflicts.  This "grep" must support the "-s" option and a standard
  73.  * regular expression as an argument.  Specify a full pathname if your site
  74.  * wants to use a particular grep.
  75.  */
  76. #ifndef GREP
  77. #define    GREP    "grep"
  78. #endif
  79.  
  80. /*
  81.  * The "rm" program to execute when pruning directories that are not part of
  82.  * a release.  This "rm" must support the "-fr" options.  Specify a full
  83.  * pathname if your site wants to use a particular rm.
  84.  */
  85. #ifndef RM
  86. #define    RM    "rm"
  87. #endif
  88.  
  89. /*
  90.  * The "sort" program to execute when displaying the module database. Specify
  91.  * a full pathname if your site wants to use a particular sort.
  92.  */
  93. #ifndef SORT
  94. #define    SORT    "sort"
  95. #endif
  96.  
  97. /*
  98.  * By default, RCS programs are executed with the shell or through execlp(),
  99.  * so the user's PATH environment variable is searched.  If you'd like to
  100.  * bind all RCS programs to a certain directory (perhaps one not in most
  101.  * people's PATH) then set the default in RCSBIN_DFLT.  Note that setting
  102.  * this here will cause all RCS programs to be executed from this directory,
  103.  * unless the user overrides the default with the RCSBIN environment variable
  104.  * or the "-b" option to CVS.
  105.  * 
  106.  * This define should be either the empty string ("") or a full pathname to the
  107.  * directory containing all the installed programs from the RCS distribution.
  108.  */
  109. #ifndef RCSBIN_DFLT
  110. #define    RCSBIN_DFLT    ""
  111. #endif
  112.  
  113. /*
  114.  * The default editor to use, if one does not specify the "-e" option to cvs,
  115.  * or does not have an EDITOR environment variable.  I set this to just "vi",
  116.  * and use the shell to find where "vi" actually is.  This allows sites with
  117.  * /usr/bin/vi or /usr/ucb/vi to work equally well (assuming that your PATH
  118.  * is reasonable).
  119.  */
  120. #ifndef EDITOR_DFLT
  121. #define    EDITOR_DFLT    "vi"
  122. #endif
  123.  
  124. /*
  125.  * The Repository file holds the path to the directory within the source
  126.  * repository that contains the RCS ,v files for each CVS working directory.
  127.  * This path is either a full-path or a path relative to CVSROOT.
  128.  * 
  129.  * The only advantage that I can see to having a relative path is that One can
  130.  * change the physical location of the master source repository, change one's
  131.  * CVSROOT environment variable, and CVS will work without problems.  I
  132.  * recommend using full-paths.
  133.  */
  134. #ifndef RELATIVE_REPOS
  135. /* #define    RELATIVE_REPOS     */
  136. #endif
  137.  
  138. /*
  139.  * When committing or importing files, you must enter a log message.
  140.  * Normally, you can do this either via the -m flag on the command line or an
  141.  * editor will be started for you.  If you like to use logging templates (the
  142.  * rcsinfo file within the $CVSROOT/CVSROOT directory), you might want to
  143.  * force people to use the editor even if they specify a message with -m.
  144.  * Enabling FORCE_USE_EDITOR will cause the -m message to be appended to the
  145.  * temp file when the editor is started.
  146.  */
  147. #ifndef FORCE_USE_EDITOR
  148. /* #define     FORCE_USE_EDITOR */
  149. #endif
  150.  
  151. /*
  152.  * When locking the repository, some sites like to remove locks and assume
  153.  * the program that created them went away if the lock has existed for a long
  154.  * time.  This used to be the default for previous versions of CVS.  CVS now
  155.  * attempts to be much more robust, so lock files should not be left around
  156.  * by mistake. The new behaviour will never remove old locks (they must now
  157.  * be removed by hand).  Enabling CVS_FUDGELOCKS will cause CVS to remove
  158.  * locks that are older than CVSLCKAGE seconds.
  159.  * Use of this option is NOT recommended.
  160.  */
  161. #ifndef CVS_FUDGELOCKS
  162. /* #define CVS_FUDGELOCKS */
  163. #endif
  164.  
  165. /*
  166.  * When committing a permanent change, CVS and RCS make a log entry of
  167.  * who committed the change.  If you are committing the change logged in
  168.  * as "root" (not under "su" or other root-priv giving program), CVS/RCS
  169.  * cannot determine who is actually making the change.
  170.  *
  171.  * As such, by default, CVS disallows changes to be committed by users
  172.  * logged in as "root".  You can disable this option by commenting
  173.  * out the lines below.
  174.  */
  175. #ifndef CVS_BADROOT
  176. #define    CVS_BADROOT
  177. #endif
  178.  
  179. /*
  180.  * The "cvs diff" command accepts all the single-character options that GNU
  181.  * diff (1.15) accepts.  Except -D.  GNU diff uses -D as a way to put
  182.  * cpp-style #define's around the output differences.  CVS, by default, uses
  183.  * -D to specify a free-form date (like "cvs diff -D '1 week ago'").  If
  184.  * you would prefer that the -D option of "cvs diff" work like the GNU diff
  185.  * option, then comment out this define.
  186.  */
  187. #ifndef CVS_DIFFDATE
  188. #define    CVS_DIFFDATE
  189. #endif
  190.  
  191. /* End of CVS configuration section */
  192.  
  193. /*
  194.  * Externs that are included in libc, but are used frequently enough to
  195.  * warrant defining here.
  196.  */
  197. #ifndef STDC_HEADERS
  198. extern void exit ();
  199. #endif
  200.  
  201. #ifndef getwd
  202. extern char *getwd ();
  203. #endif
  204.  
  205. /*
  206.  * Some UNIX distributions don't include these in their stat.h Defined here
  207.  * because "config.h" is always included last.
  208.  */
  209. #ifndef S_IWRITE
  210. #define    S_IWRITE    0000200        /* write permission, owner */
  211. #endif
  212. #ifndef S_IWGRP
  213. #define    S_IWGRP        0000020        /* write permission, grougroup */
  214. #endif
  215. #ifndef S_IWOTH
  216. #define    S_IWOTH        0000002        /* write permission, other */
  217. #endif
  218.